* {
  margin: 0;
  padding: 0;
}
body {
  background-color: #ccc;
}
.container {
  float: left;
  width: 200px;
  height: 200px;
  margin: 30px;
  position: relative;
}
.clearfix:after {
  display: block;
  content: "";
  clear:both;
}
.container>div {
  margin: 0 auto;
}
.square {
  width: 60px;
  height: 60px;
  background-color: #67CF22;
  animation: square 1.2s infinite ease-in-out;
}
@keyframes square {
  0% {transform:rotate(0deg);}
  0% {transform:rotateY(180deg);}
  0% {transform:rotateY(180deg) rotateX(180deg);}
}
.circle {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  border: 6px solid #fff;
  border-right-color: #67cf22;
  animation: circle 1s infinite ease-in-out;
}
@keyframes circle {
  0% {transform: rotate(0deg);}
  100% {transform: rotate(360deg);}
}
.dot {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #67cf22;
  animation: dot 1s infinite ease-in-out;
}
@keyframes dot {
  0% {transform: scale(.9,.9)}
  30% {transform: scale(.1,.1);}
  70% {transform: scale(2,2);}
  100% {transform: scale(1,1);}
}
.dotM2,.dotM1,.dotM3 {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #67cf22;
  float: left;
  margin-left: 10px;
  animation: dotM 1s infinite ease-in-out;
}
.container>.dotM1 {
  margin-left: 60px;
}
.dotM2 {
  animation-delay: .2s;
}
.dotM3 {
  animation-delay: .4s;
}
@keyframes dotM {
  0% {transform: scale(0,0);}
  20% {transform: scale(1,1);}
  80% {transform: scale(0,0);}
}
.container1 > div, .container2 > div, .container3 > div {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  position: absolute;
  animation: bouncedelay 1.2s infinite ease-in-out;
  animation-fill-mode: both;
}
.ct {
  position: absolute;
  width: 60px;
  height: 60px;
}
.circle0 {
  background-color: #67cf22;
}
.container2 {
  transform: rotateZ(45deg);
}
.container3 {
  transform: rotateZ(90deg);
}
.circle1 { top: 0; left: 0; }
.circle2 { top: 0; right: 0; }
.circle3 { right: 0; bottom: 0; }
.circle4 { left: 0; bottom: 0; }
.container2 .circle1 {
  animation-delay: -1.1s;
}
.container3 .circle1 {
  animation-delay: -1.0s;
}
.container1 .circle2 {
  animation-delay: -0.9s;
}
.container2 .circle2 {
  animation-delay: -0.8s;
}
.container3 .circle2 {
  animation-delay: -0.7s;
}
.container1 .circle3 {
  animation-delay: -0.6s;
}
.container2 .circle3 {
  animation-delay: -0.5s;
}
.container3 .circle3 {
  animation-delay: -0.4s;
}
.container1 .circle4 {
  animation-delay: -0.3s;
}
.container2 .circle4 {
  animation-delay: -0.2s;
}
.container3 .circle4 {
  animation-delay: -0.1s;
}
@keyframes bouncedelay {
  0%, 80%, 100% {
    transform: scale(0);
    -webkit-transform: scale(0);
  } 40% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }
}
.container>.ct1 {
  position: relative;
  margin-left: 50px;
}
.ct1>.banner0 {
  width: 6px;
  height: 20px;
  border-radius: 2px;
  background-color: #67cf22;
  position: absolute;
  animation: banner 1s infinite ease-in-out;
}
.ct1>.banner0.banner1 {
  top: -15px;
  animation-delay: 0.1s;
}
.ct1>.banner0.banner2 {
  top: 0px;
  left: 32px;
  transform: rotate(45deg);
  animation-delay: 0.2s;
}
.ct1>.banner0.banner3 {
  top:26px;
  left: 40px;
  transform: rotate(90deg);
  animation-delay: 0.3s;
}
.ct1>.banner0.banner4 {
  top:56px;
  left: 30px;
  transform: rotate(135deg);
  animation-delay: 0.4s;
}
.ct1>.banner0.banner5 {
  top:66px;
  left: 0px;
  transform: rotate(180deg);
  animation-delay: 0.5s;
}
.ct1>.banner0.banner6 {
  top:0px;
  left: -32px;
  transform: rotate(-45deg);
  animation-delay: 0.6s;
}
.ct1>.banner0.banner7 {
  top: 26px;
  left: -40px;
  transform: rotate(-90deg);
  animation-delay: 0.7s;
}
.ct1>.banner0.banner8 {
  top: 56px;
  left: -32px;
  transform: rotate(-135deg);
  animation-delay: 0.8s;
}
@keyframes banner {
  0%,100% {opacity: .4;}
  50% {opacity: 1.4;}
}

.semicircle1 {
  width: 60px;
  height: 30px;
  border-radius: 30px 30px 0 0;
  background-color: #67cf22;
  animation: rotation1 1s infinite ease-in-out;
}
.semicircle2 {
  width: 60px;
  height: 30px;
  border-radius: 0 0 30px 30px;
  background-color: #67cf22;
  animation: rotation2 1s infinite ease-in-out;
}
@keyframes rotation1 {
  0%,100% {
    transform: rotate(0deg);
  }
  50% {
    transform: rotate(-20deg);
  }
}
@keyframes rotation2 {
  0%,100% {
    transform: rotate(0deg);
  }
  50% {
    transform: rotate(20deg);
  }
}
.dotcircle {
  width: 10px;
  height: 10px;
  border-radius: 5px;
  background-color: #67cf22;
  position: absolute;
  animation: dotcircle 1s infinite ease-in-out;
}
.dotcircle1 {
  left: 200px;
  top: 27px;
}
.dotcircle2{
  left: 220px;
  top: 27px;
}
.dotcircle3 {
  left: 240px;
  top: 27px;
}
@keyframes dotcircle {
  75% {opacity: .5}
  100% {transform: translate(-130px,-6.25px);}
}
.triangle {
  width: 0;
  height: 0;
  border-width: 20px;
  border-style: solid;
  border-color: transparent transparent orange transparent;
  animation: triangle 1s infinite ease-in-out;
}
@keyframes triangle {
  0% {transform: rotateX(0deg) rotateY(0deg);}
  25% {transform: rotateX(180deg) rotateY(0deg);}
  50% {transform: rotateX(180deg) rotateY(180deg);}
  75% {transform: rotateX(0deg) rotateY(180deg);}
}